library(tidyverse)
data(mtcars)
We can include R code inline as well like this: The average amount of cylinders of the cars in the mtcars dataset is 6.1875.
Now let’s create some better looking tables. The following looks good in RStudio, but after rendering not that much.
head(mtcars)
## mpg cyl disp hp drat wt qsec vs am gear carb
## Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
knitr::kable() creates an actual table in the target format (In RStudio it doesn’t lool that nice though!)
library(knitr)
kable(head(mtcars))
| mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Mazda RX4 | 21.0 | 6 | 160 | 110 | 3.90 | 2.620 | 16.46 | 0 | 1 | 4 | 4 |
| Mazda RX4 Wag | 21.0 | 6 | 160 | 110 | 3.90 | 2.875 | 17.02 | 0 | 1 | 4 | 4 |
| Datsun 710 | 22.8 | 4 | 108 | 93 | 3.85 | 2.320 | 18.61 | 1 | 1 | 4 | 1 |
| Hornet 4 Drive | 21.4 | 6 | 258 | 110 | 3.08 | 3.215 | 19.44 | 1 | 0 | 3 | 1 |
| Hornet Sportabout | 18.7 | 8 | 360 | 175 | 3.15 | 3.440 | 17.02 | 0 | 0 | 3 | 2 |
| Valiant | 18.1 | 6 | 225 | 105 | 2.76 | 3.460 | 20.22 | 1 | 0 | 3 | 1 |
The kableExtra package allows us to manipulate the output tables in detail:
library(kableExtra)
kable(head(mtcars)) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive")) %>%
row_spec(0, angle = -45)
| mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Mazda RX4 | 21.0 | 6 | 160 | 110 | 3.90 | 2.620 | 16.46 | 0 | 1 | 4 | 4 |
| Mazda RX4 Wag | 21.0 | 6 | 160 | 110 | 3.90 | 2.875 | 17.02 | 0 | 1 | 4 | 4 |
| Datsun 710 | 22.8 | 4 | 108 | 93 | 3.85 | 2.320 | 18.61 | 1 | 1 | 4 | 1 |
| Hornet 4 Drive | 21.4 | 6 | 258 | 110 | 3.08 | 3.215 | 19.44 | 1 | 0 | 3 | 1 |
| Hornet Sportabout | 18.7 | 8 | 360 | 175 | 3.15 | 3.440 | 17.02 | 0 | 0 | 3 | 2 |
| Valiant | 18.1 | 6 | 225 | 105 | 2.76 | 3.460 | 20.22 | 1 | 0 | 3 | 1 |
mtcars %>%
count(cyl) %>%
mutate(percent = n / sum(n) * 100) %>%
kable()
| cyl | n | percent |
|---|---|---|
| 4 | 11 | 34.375 |
| 6 | 7 | 21.875 |
| 8 | 14 | 43.750 |
mod1 <- lm(mpg ~ cyl + vs + gear, data = mtcars)
mod2 <- lm(mpg ~ cyl + vs + gear + hp + disp, data = mtcars)
with sjPlot:
library(sjPlot)
tab_model(mod1, mod2)
| mpg | mpg | |||||
|---|---|---|---|---|---|---|
| Predictors | Estimates | CI | p | Estimates | CI | p |
| (Intercept) | 35.93 | 20.78 – 51.08 | <0.001 | 28.02 | 10.62 – 45.41 | 0.004 |
| cyl | -2.87 | -4.21 – -1.52 | <0.001 | -0.92 | -2.97 – 1.12 | 0.385 |
| vs | -0.47 | -4.71 – 3.77 | 0.830 | -0.20 | -4.22 – 3.83 | 0.924 |
| gear | 0.57 | -1.38 – 2.52 | 0.571 | 1.38 | -1.21 – 3.97 | 0.307 |
| hp | -0.03 | -0.07 – 0.01 | 0.150 | |||
| disp | -0.01 | -0.04 – 0.01 | 0.333 | |||
| Observations | 32 | 32 | ||||
| R2 / R2 adjusted | 0.731 / 0.703 | 0.779 / 0.737 | ||||
with stargazer:
library(stargazer)
stargazer(mod1, mod2)
% Table created by stargazer v.5.2.2 by Marek Hlavac, Harvard University. E-mail: hlavac at fas.harvard.edu % Date and time: Wed, Dec 04, 2019 - 01:48:08
formattable
library(formattable)
formattable(mtcars,
list(mpg = color_tile("yellow", "orange"),
area(col = disp) ~ normalize_bar("pink", 0.2),
area(col = hp) ~ normalize_bar("lightgreen", 0.2),
vs = formatter("span",
style = x ~ style(color = ifelse(x, "green", "red")),
x ~ icontext(ifelse(x, "ok", "remove"), ifelse(x, "Yes", "No")))))
| mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Mazda RX4 | 21.0 | 6 | 160.0 | 110 | 3.90 | 2.620 | 16.46 | No | 1 | 4 | 4 |
| Mazda RX4 Wag | 21.0 | 6 | 160.0 | 110 | 3.90 | 2.875 | 17.02 | No | 1 | 4 | 4 |
| Datsun 710 | 22.8 | 4 | 108.0 | 93 | 3.85 | 2.320 | 18.61 | Yes | 1 | 4 | 1 |
| Hornet 4 Drive | 21.4 | 6 | 258.0 | 110 | 3.08 | 3.215 | 19.44 | Yes | 0 | 3 | 1 |
| Hornet Sportabout | 18.7 | 8 | 360.0 | 175 | 3.15 | 3.440 | 17.02 | No | 0 | 3 | 2 |
| Valiant | 18.1 | 6 | 225.0 | 105 | 2.76 | 3.460 | 20.22 | Yes | 0 | 3 | 1 |
| Duster 360 | 14.3 | 8 | 360.0 | 245 | 3.21 | 3.570 | 15.84 | No | 0 | 3 | 4 |
| Merc 240D | 24.4 | 4 | 146.7 | 62 | 3.69 | 3.190 | 20.00 | Yes | 0 | 4 | 2 |
| Merc 230 | 22.8 | 4 | 140.8 | 95 | 3.92 | 3.150 | 22.90 | Yes | 0 | 4 | 2 |
| Merc 280 | 19.2 | 6 | 167.6 | 123 | 3.92 | 3.440 | 18.30 | Yes | 0 | 4 | 4 |
| Merc 280C | 17.8 | 6 | 167.6 | 123 | 3.92 | 3.440 | 18.90 | Yes | 0 | 4 | 4 |
| Merc 450SE | 16.4 | 8 | 275.8 | 180 | 3.07 | 4.070 | 17.40 | No | 0 | 3 | 3 |
| Merc 450SL | 17.3 | 8 | 275.8 | 180 | 3.07 | 3.730 | 17.60 | No | 0 | 3 | 3 |
| Merc 450SLC | 15.2 | 8 | 275.8 | 180 | 3.07 | 3.780 | 18.00 | No | 0 | 3 | 3 |
| Cadillac Fleetwood | 10.4 | 8 | 472.0 | 205 | 2.93 | 5.250 | 17.98 | No | 0 | 3 | 4 |
| Lincoln Continental | 10.4 | 8 | 460.0 | 215 | 3.00 | 5.424 | 17.82 | No | 0 | 3 | 4 |
| Chrysler Imperial | 14.7 | 8 | 440.0 | 230 | 3.23 | 5.345 | 17.42 | No | 0 | 3 | 4 |
| Fiat 128 | 32.4 | 4 | 78.7 | 66 | 4.08 | 2.200 | 19.47 | Yes | 1 | 4 | 1 |
| Honda Civic | 30.4 | 4 | 75.7 | 52 | 4.93 | 1.615 | 18.52 | Yes | 1 | 4 | 2 |
| Toyota Corolla | 33.9 | 4 | 71.1 | 65 | 4.22 | 1.835 | 19.90 | Yes | 1 | 4 | 1 |
| Toyota Corona | 21.5 | 4 | 120.1 | 97 | 3.70 | 2.465 | 20.01 | Yes | 0 | 3 | 1 |
| Dodge Challenger | 15.5 | 8 | 318.0 | 150 | 2.76 | 3.520 | 16.87 | No | 0 | 3 | 2 |
| AMC Javelin | 15.2 | 8 | 304.0 | 150 | 3.15 | 3.435 | 17.30 | No | 0 | 3 | 2 |
| Camaro Z28 | 13.3 | 8 | 350.0 | 245 | 3.73 | 3.840 | 15.41 | No | 0 | 3 | 4 |
| Pontiac Firebird | 19.2 | 8 | 400.0 | 175 | 3.08 | 3.845 | 17.05 | No | 0 | 3 | 2 |
| Fiat X1-9 | 27.3 | 4 | 79.0 | 66 | 4.08 | 1.935 | 18.90 | Yes | 1 | 4 | 1 |
| Porsche 914-2 | 26.0 | 4 | 120.3 | 91 | 4.43 | 2.140 | 16.70 | No | 1 | 5 | 2 |
| Lotus Europa | 30.4 | 4 | 95.1 | 113 | 3.77 | 1.513 | 16.90 | Yes | 1 | 5 | 2 |
| Ford Pantera L | 15.8 | 8 | 351.0 | 264 | 4.22 | 3.170 | 14.50 | No | 1 | 5 | 4 |
| Ferrari Dino | 19.7 | 6 | 145.0 | 175 | 3.62 | 2.770 | 15.50 | No | 1 | 5 | 6 |
| Maserati Bora | 15.0 | 8 | 301.0 | 335 | 3.54 | 3.570 | 14.60 | No | 1 | 5 | 8 |
| Volvo 142E | 21.4 | 4 | 121.0 | 109 | 4.11 | 2.780 | 18.60 | Yes | 1 | 4 | 2 |
reactable
library(reactable)
reactable(mtcars)
reactable(mtcars, filterable = TRUE, searchable = TRUE,
columns = list(
mpg = colDef(footer = "mean"),
cyl = colDef(footer = function(values) mean(values))
))
The European languages are members of the same family (Hsiao 2016).
As Draz (2016, 22–47) shows: their separate existence is a myth.
visNetwork
library(visNetwork)
library(igraph)
erdos.renyi.game(22, 0.3) %>%
visIgraph()
htmlwidgets
library(ggplot2)
library(plotly)
p <- ggplot(data = diamonds, aes(x = cut, fill = clarity)) +
geom_bar(position = "dodge")
ggplotly(p)
Draz, Amr, Slim Abdennadher, and Yomna Abdelrahman. 2016. “Kodr: A Customizable Learning Platform for Computer Science Education.” In Adaptive and Adaptable Learning: 11th European Conference on Technology Enhanced Learning, Ec-Tel 2016, Lyon, France, September 13-16, 2016, Proceedings, edited by Katrien Verbert, Mike Sharples, and Tomaž Klobučar, 579–82. Cham: Springer International Publishing. https://doi.org/10.1007/978-3-319-45153-4_67.
Hsiao, I-Han. 2016. “Mobile Grading Paper-Based Programming Exams: Automatic Semantic Partial Credit Assignment Approach.” In Adaptive and Adaptable Learning: 11th European Conference on Technology Enhanced Learning, Ec-Tel 2016, Lyon, France, September 13-16, 2016, Proceedings, edited by Katrien Verbert, Mike Sharples, and Tomaž Klobučar, 110–23. Cham: Springer International Publishing. https://doi.org/10.1007/978-3-319-45153-4_9.